Large-scale, network-based computing represents a paradigm shift from traditional client-server computing relationships. With large-scale, network-based computing platforms (e.g., data centers), customers are able to leverage shared resources on-demand by renting resources that are owned by third parties and that reside “in the cloud.” With these resources, customers of the platform are able to launch and maintain large applications without actually owning or servicing the underlying infrastructure necessary for these applications. As such, network-accessible computing platforms, often referred to as “cloud-computing platforms’ or “cloud-computing environments,” have expanded the class of individuals and companies able to effectively compete in the realm of computing applications.
Generally, customers of a network-based computing platform launch and maintain large applications within the network-based computing platform through the use of one or more virtual machine images. Virtual machine images can be created by the network-based computing platform. However, often, the customers already have virtual machine images within their own systems. Thus, it can be desirable to retrieve the virtual machine images from the customer's own system. Such retrieval however generally utilizes a great deal of resources and bandwidth within both the network-based computing platform and the customer's own system. Currently, if the customer already has virtual machine images, the virtual machine images are retrieved from the customer's system by the network-based computing platform and then, once the virtual machine images are fully uploaded to the network-based computing platform, the network-based computing platform checks the virtual machine images to make sure that they are compatible with the platform. That is, the network-based computing platform conducts an error detection process upon receiving the virtual machine images.